package estadosDelEnvio;

import envios.Envio;
import exceptions.StatesException;

/**
 * Esta clase representa al estado inicial del envio a la hora de
 * ser creado, aun no a comenzado el proceso de envio de los productos
 * hacia el domicilio del cliente.
 * 
 * @author Lucas Alan Silvestri.
 *
 */
public class PendienteDeEnvio extends EstadoDeEnvio {

	/**
	 * Comienza el proceso de envio de los productos hacia el
	 * domicilio del cliente.
	 * @param unEnvio
	 * @throws StatesException
	 */
	@Override
	public void enviarEnvio(Envio unEnvio) throws StatesException{
		unEnvio.cambiarEstado(new EnProcesoDeEnvio());
		
	}
	
	/**
	 * Retorna que el estado actual se encuentra PendienteDeEnvio.
	 * @return
	 */
	@Override
	public boolean estoyPendienteDeEnvio(){
		return true;
	}
}
